<?php

namespace app\api\controller;

use app\common\controller\Api;
use think\Db;
use think\Log;

/**
 * 示例接口
 */
class Demo extends Api
{

    //如果$noNeedLogin为空表示所有接口都需要登录才能请求
    //如果$noNeedRight为空表示所有接口都需要验证权限才能请求
    //如果接口已经设置无需登录,那也就无需鉴权了
    //
    // 无需登录的接口,*表示全部
    protected $noNeedLogin = ['querystudentinfo','test', 'test1'];
    // 无需鉴权的接口,*表示全部
    protected $noNeedRight = ['test2'];

    /**
     * 学生费用查询
     *
     * @param string $idno
     */
    public function querystudentinfo()
    {
        $idno =trim($this->request->request('idno'));
        Log::info("收到请求：" . $idno);
        if ($idno == null) {
            $this->error('返回成功', ['msg' => '身份证号码不能为空']);
        } else {
            $sestudent = Db::table('fa_studentinfo')->where('idno', $idno)->order('id desc')->select();
            if ($sestudent == null) {
                $this->error('返回成功', ['msg' => '没有该学生的缴费信息']);
            } else {
                $count = count($sestudent);
                if ($count > 1) {
                    $wheresta['status'] = ['in', ['0','1','2']];
                    $list = Db::table('fa_studentinfo')->where('idno', $idno)->where($wheresta)->order('id desc')->find();
                    if ($list == null) {
                        $list = Db::table('fa_studentinfo')->where('idno', $idno)->find();
                        if ($list == null) {
                            $this->error('返回成功', ['msg' => '没有该学生的缴费信息']);
                        } else {
                            $username =  trim($list['username']);
                            $sex = $list['sex'];
                            $idno = trim($list['idno']);
                            $tel = trim($list['tel']);
                            $grade = $list['grade'];
                            $year = $list['year'];
                            $classname = $list['classname'];
                            $status = $list['status'];
                            $pay1 = $list['pay1'];
                            $pay2 = $list['pay2'];
                            $pay3 = $list['pay3'];
                            $pay4 = $list['pay4'];
                            $pay6 = $list['pay6'];
                            $pay7 = $list['pay7'];
                            $pay8 = $list['pay8'];
                            $pay9 = $list['pay9'];
                            $pay5 = $list['pay5'];
                            $mete = $list['mete'];
//                            if($grade=="高二"||$grade=="高三"){
//                                $this->error('返回成功', ['msg' => '高二高三学生系统暂停使用']);
//                            }else{
//                                $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);
//
//                            }
                            $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);

                        }

                    } else {
                        $username =trim($list['username']);
                        $sex = $list['sex'];
                        $idno =trim( $list['idno']);
                        $tel =trim($list['tel']) ;
                        $grade = $list['grade'];
                        $year = $list['year'];
                        $classname = $list['classname'];
                        $status = $list['status'];
                        $pay1 = $list['pay1'];
                        $pay2 = $list['pay2'];
                        $pay3 = $list['pay3'];
                        $pay4 = $list['pay4'];
                        $pay6 = $list['pay6'];
                        $pay7 = $list['pay7'];
                        $pay8 = $list['pay8'];
                        $pay9 = $list['pay9'];
                        $pay5 = $list['pay5'];
//                        if($grade=="高二"||$grade=="高三"){
//                            $this->error('返回成功', ['msg' => '高二高三学生系统暂停使用']);
//                        }{
//                            $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);
//
//                        }
                        $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);

                    }
                }
                else{
                        $list = Db::table('fa_studentinfo')->where('idno', $idno)->find();
                        if ($list == null) {
                            $this->error('返回成功', ['msg' => '没有该学生的缴费信息']);
                        } else {
                            $username = $list['username'];
                            $sex = $list['sex'];
                            $idno =trim( $list['idno']);
                            $tel = $list['tel'];
                            $grade = $list['grade'];
                            $year = $list['year'];
                            $classname = $list['classname'];
                            $status = $list['status'];
                            $pay1 = $list['pay1'];
                            $pay2 = $list['pay2'];
                            $pay3 = $list['pay3'];
                            $pay4 = $list['pay4'];
                            $pay6 = $list['pay6'];
                            $pay7 = $list['pay7'];
                            $pay8 = $list['pay8'];
                            $pay9 = $list['pay9'];
                            $pay5 = $list['pay5'];
                            $mete = $list['mete'];
                            if($pay5>0&&strpos($mete,'住宿费')){
                                $status='0';
                                $pay1 = 0;
                                $pay2 = $list['pay5'];
                                $pay3 = 0;
                                $pay4 =  0;
                                $pay6 =  0;
                                $pay7 =  0;
                                $pay8 =  0;
                                $pay9 =  0;
                                $pay5 =  0;
//                                if($grade=="高二"||$grade=="高三"){
//                                    $this->error('返回成功', ['msg' => '高二高三学生系统暂停使用']);
//                                }{
//                                    $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);
//
//                                }
                                $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);

                            }else{
//                                if($grade=="高二"||$grade=="高三"){
//                                    $this->error('返回成功', ['msg' => '高二高三学生系统暂停使用']);
//                                }{
//                                    $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);
//
//                                }
                                $this->success('返回成功', ['username' => $username, 'sex' => $sex, 'idno' => $idno, 'grade' => $grade, 'year' => $year, 'classname' => $classname, 'tel' => $tel, 'status' => $status, 'pay1' => $pay1, 'pay2' => $pay2, 'pay3' => $pay3, 'pay4' => $pay4, 'pay5' => $pay5, 'pay6' => $pay6, 'pay7' => $pay7, 'pay8' => $pay8, 'pay9' => $pay9]);

                            }
                        }
                    }
                }
            }

        }


    /**
     * 测试方法
     *
     * @ApiTitle    (测试名称)
     * @ApiSummary  (测试描述信息)
     * @ApiMethod   (POST)
     * @ApiRoute    (/api/demo/test/id/{id}/name/{name})
     * @ApiHeaders  (name=token, type=string, required=true, description="请求的Token")
     * @ApiParams   (name="id", type="integer", required=true, description="会员ID")
     * @ApiParams   (name="name", type="string", required=true, description="用户名")
     * @ApiParams   (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据")
     * @ApiReturnParams   (name="code", type="integer", required=true, sample="0")
     * @ApiReturnParams   (name="msg", type="string", required=true, sample="返回成功")
     * @ApiReturnParams   (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据返回")
     * @ApiReturn   ({
         'code':'1',
         'msg':'返回成功'
        })
     */
    public function test()
    {
        $this->success('返回成功', $this->request->param());
    }

    /**
     * 无需登录的接口
     *
     */
    public function test1()
    {
        $this->success('返回成功', ['action' => 'test1']);
    }

    /**
     * 需要登录的接口
     *
     */
    public function test2()
    {
        $this->success('返回成功', ['action' => 'test2']);
    }

    /**
     * 需要登录且需要验证有相应组的权限
     *
     */
    public function test3()
    {
        $this->success('返回成功', ['action' => 'test3']);
    }

}
